Streaming data processing is an important big data processing application. In a streaming data processing application, data is regularly received and data processing results are desired at a regular output frequency. The data processing results are typically dependent both on newly received data and historical data (e.g., previously received data). A traditional big data processor processes the data by combining the newly received data with the historical data and executing a data processing query on the big data set. The full results of the query are determined and output at the desired output frequency. Performing the full query repeatedly on the large and ever-growing data set can require a large amount of computational power.